package com.yunxin.core.domain.model.contact;

import java.util.Date;

/**
 * @author zero°
 * @since 2023-07-12
 */
public interface ContactMessageSendTaskExecuteRepository {

    /**
     * 保存
     * @param contactMessageSendTaskExecute contactMessageSendTaskExecute
     * @return boolean
     */
    boolean saveContactMessageSendTaskExecute(ContactMessageSendTaskExecute contactMessageSendTaskExecute);

    /**
     * 根据id更新总条数
     * @param id id
     * @param count count
     * @return count
     */
    boolean updateTotalCountById(Long id, int count);

    /**
     * 根据id更新成功条数
     * @param id id
     * @param count count
     * @return count
     */
    boolean updateSuccessCountById(Long id, int count);

    /**
     * 根据id更新成功条数
     * @param id id
     * @param count count
     * @return count
     */
    boolean  updateReachCountById(Long id, int count);

    /**
     * 根据任务详情id及时间任务执行id
     * @param taskDetailId taskDetailId
     * @param startTime startTime
     * @param endTime endTime
     * @return Long
     */
    Long getTaskExecuteIdByTaskDetailAndTime(Long taskDetailId, Date startTime, Date endTime);


}
